ALT+NUMPAD ASCII Key Combos: The α and Ω of Creating Obscure Passwords
As some Microsoft
Operating System geeks know, you can type many more characters than are on a
standard keyboard by using the ALT+NUMPAD combination technique. For example, by holding
down the ALT key, typing 234 on the number pad, then releasing ALT gives you the
Ω character. I'm writing this article mostly because when I search around
for information on the topic of ALT+Number key combos I find pages that are
lacking in details. Most of the pages I found are coming from the angle of using ALT+NUMPAD
combinations as shortcuts for typing in non-English languages, but I have
another use for them. Using ALT+NUMPAD can make for some very ugly passwords to
crack. These odd characters have two major advantages over normal keystrokes:
1. They are unlikely to be in someone's dictionary or brute
force list. Try brute forcing a password like "ace of ♠s" or "I am the α and the
Ω".
2. Some hardware key loggers will not log these odd
characters. Your mileage
may vary on this as some key loggers can, so don't rely on it to keep you
100% safe.
I'll cover the 2nd
point more in an upcoming article. Using ALT+NUMPAD to type odd characters
into your password also has a few disadvantages.
1. The way they are described in this article only works in
Microsoft Operating Systems (DOS, Windows 9x, Vista, XP, 2000), and there may be some variation amongst the
different versions. If you know of a good way to do the same thing in Linux
please
email me.
2. Not all applications will let you use these odd
characters. For testing I tried the password "Ωÿ" (ALT+234 and ALT+0255) on
a Windows XP local account, and on the IP.Boards at
BinRev.com and it worked fine,
but not all application will let you use these sorts of characters in your
password.
Microsoft has the following to say on the subject of ALT+NUM
key codes:
From:http://www.microsoft.com/globaldev/reference/glossary.mspx
Alt+Numpad: A method of entering characters by typing in the
character's decimal code with the Numeric Pad keys (Num Lock turned on). In
Windows:
• Alt+<xxx>, where xxx is the decimal value of a code point, generates an
OEM-encoded character.
• Alt+<0xxx>, where xxx is the decimal value of a code point, generates a
Windows-encoded character.
• Alt+<+>+<xxxx>, where xxxx is the hexadecimal Unicode code point,
generates a Unicode-encoded (UTF-16) character. |
Shortly I'll
explain
explain the first two methods further. The 3rd is more problematic to work with.
First, you may have to edit your registry and add a the REG_SZ value
"HKEY_Current_User/Control Panel/Input Method/EnableHexNumpad", then set it
to "1". Also, depending on where you are trying to type the character the
application may interpret your hexadecimal Fs as attempts to bring down the
file menu. Since method three is so problematic I'll focus on the first two methods.
First, make sure you are
using the number pad and not the top roll number keys, only the number pad
works for this. Second, make sure NUM LOCK is on. It does not have to be on
in all cases for these key combos to work, but it helps by keeping the
number pad from being misinterpreted.
The chart below
shows the relevant key codes to get various symbols. The table on the left
shows the OEM Extended ASCII character set (AKA: IBM PC Extended Character
Set; Extended ASCII; High ASCII; 437 U.S. English). True ASCII is only 7
bit, so the range is 0 to 127. IBM extended it to 8 bits and added more
characters. To type these characters you merely have to hold down an ALT
key, type the numeric value of the character, then release the ALT key.
The
table on the right shows the ANSI character set (AKA: Window's ANSI/ISO
Latin-1/ANSI Extended ASCII, though technically they are not exactly the
same thing.). To use the ANSI character set you do the same
thing as the OEM set, but you preface the number with an extra zero. Notice
that the first 127 should be the same in both sets, though values 0-31 may
not be viewable in all cases. I've been in "character encoding hell" just
trying to get this article on my site in a readable format.
I'm only covering
the first 256 characters of both sets in my chart, in some cases you can go
higher but it depends on the application you are typing in. For example, ALT+257 gives me ā in Wordpad, but in Notepad it loops back around the
character set and gives me☺(257-256=1
which is ☺ in the OEM set) . If you want to know what key code will bring up
a particular character in a certain Windows font run Windows Character Map (charmap.exe)
and look in the bottom right corner to find out.
I hope this information is useful to some
of you, I'll be referring back to it when I start to write my hardware key
logger reviews. Check out the links at the bottom of this page for further
information on the topic.
IBM (AKA: OEM) /
PC Extended ASCII |
Window's ANSI/ISO Latin-1/ANSI Extended ASCII |
ALT+0 | |
ALT+1 | ☺ |
ALT+2 | ☻ |
ALT+3 | ♥ |
ALT+4 | ♦ |
ALT+5 | ♣ |
ALT+6 | ♠ |
ALT+7 | |
ALT+8 | |
ALT+9 | |
ALT+10 |
|
ALT+11 | ♂ |
ALT+12 | ♀ |
T+13 | |
ALT+14 | ♫ |
ALT+15 | ☼ |
ALT+16 | ► |
ALT+17 | ◄ |
ALT+18 | ↕ |
ALT+19 | ‼ |
ALT+20 | ¶ |
ALT+21 | § |
ALT+22 | ▬ |
ALT+23 | ↨ |
ALT+24 | ↑ |
ALT+25 | ↓ |
ALT+26 | → |
ALT+27 | ← |
ALT+28 | ∟ |
ALT+29 | ↔ |
ALT+30 | ▲ |
ALT+31 | ▼ |
ALT+32 | |
ALT+33 | ! |
ALT+34 | " |
ALT+35 | # |
ALT+36 | $ |
ALT+37 | % |
ALT+38 | & |
ALT+39 | ' |
ALT+40 | ( |
ALT+41 | ) |
ALT+42 | * |
ALT+43 | + |
ALT+44 | , |
ALT+45 | - |
ALT+46 | . |
ALT+47 | / |
ALT+48 | 0 |
ALT+49 | 1 |
ALT+50 | 2 |
ALT+51 | 3 |
ALT+52 | 4 |
ALT+53 | 5 |
ALT+54 | 6 |
ALT+55 | 7 |
ALT+56 | 8 |
ALT+57 | 9 |
ALT+58 | : |
ALT+59 | ; |
ALT+60 | < |
ALT+61 | = |
ALT+62 | > |
ALT+63 | ? |
ALT+64 | @ |
ALT+65 | A |
ALT+66 | B |
ALT+67 | C |
ALT+68 | D |
ALT+69 | E |
ALT+70 | F |
ALT+71 | G |
ALT+72 | H |
ALT+73 | I |
ALT+74 | J |
ALT+75 | K |
ALT+76 | L |
ALT+77 | M |
ALT+78 | N |
ALT+79 | O |
ALT+80 | P |
ALT+81 | Q |
ALT+82 | R |
ALT+83 | S |
ALT+84 | T |
ALT+85 | U |
ALT+86 | V |
ALT+87 | W |
ALT+88 | X |
ALT+89 | Y |
ALT+90 | Z |
ALT+91 | [ |
ALT+92 | \ |
ALT+93 | ] |
ALT+94 | ^ |
ALT+95 | _ |
ALT+96 | ` |
ALT+97 | a |
ALT+98 | b |
ALT+99 | c |
ALT+100 | d |
ALT+101 | e |
ALT+102 | f |
ALT+103 | g |
ALT+104 | h |
ALT+105 | i |
ALT+106 | j |
ALT+107 | k |
ALT+108 | l |
ALT+109 | m |
ALT+110 | n |
ALT+111 | o |
ALT+112 | p |
ALT+113 | q |
ALT+114 | r |
ALT+115 | s |
ALT+116 | t |
ALT+117 | u |
ALT+118 | v |
ALT+119 | w |
ALT+120 | x |
ALT+121 | y |
ALT+122 | z |
ALT+123 | { |
ALT+124 | | |
ALT+125 | } |
ALT+126 | ~ |
ALT+127 | ⌂ |
|
ALT+128 | Ç |
ALT+129 | ü |
ALT+130 | é |
ALT+131 | â |
ALT+132 | ä |
ALT+133 | à |
ALT+134 | å |
ALT+135 | ç |
ALT+136 | ê |
ALT+137 | ë |
ALT+138 | è |
ALT+139 | ï |
ALT+140 | î |
ALT+141 | ì |
ALT+142 | Ä |
ALT+143 | Å |
ALT+144 | É |
ALT+145 | æ |
ALT+146 | Æ |
ALT+147 | ô |
ALT+148 | ö |
ALT+149 | ò |
ALT+150 | û |
ALT+151 | ù |
ALT+152 | ÿ |
ALT+153 | Ö |
ALT+154 | Ü |
ALT+155 | ¢ |
ALT+156 | £ |
ALT+157 | ¥ |
ALT+158 | ₧ |
ALT+159 | ƒ |
ALT+160 | á |
ALT+161 | í |
ALT+162 | ó |
ALT+163 | ú |
ALT+164 | ñ |
ALT+165 | Ñ |
ALT+166 | ª |
ALT+167 | º |
ALT+168 | ¿ |
ALT+169 | ⌐ |
ALT+170 | ¬ |
ALT+171 | ½ |
ALT+172 | ¼ |
ALT+173 | ¡ |
ALT+174 | « |
ALT+175 | » |
ALT+176 | ░ |
ALT+177 | ▒ |
ALT+178 | ▓ |
ALT+179 | │ |
ALT+180 | ┤ |
ALT+181 | ╡ |
ALT+182 | ╢ |
ALT+183 | ╖ |
ALT+184 | ╕ |
ALT+185 | ╣ |
ALT+186 | ║ |
ALT+187 | ╗ |
ALT+188 | ╝ |
ALT+189 | ╜ |
ALT+190 | ╛ |
ALT+191 | ┐ |
ALT+192 | └ |
ALT+193 | ┴ |
ALT+194 | ┬ |
ALT+195 | ├ |
ALT+196 | ─ |
ALT+197 | ┼ |
ALT+198 | ╞ |
ALT+199 | ╟ |
ALT+200 | ╚ |
ALT+201 | ╔ |
ALT+202 | ╩ |
ALT+203 | ╦ |
ALT+204 | ╠ |
ALT+205 | ═ |
ALT+206 | ╬ |
ALT+207 | ╧ |
ALT+208 | ╨ |
ALT+209 | ╤ |
ALT+210 | ╥ |
ALT+211 | ╙ |
ALT+212 | ╘ |
ALT+213 | ╒ |
ALT+214 | ╓ |
ALT+215 | ╫ |
ALT+216 | ╪ |
ALT+217 | ┘ |
ALT+218 | ┌ |
ALT+219 | █ |
ALT+220 | ▄ |
ALT+221 | ▌ |
ALT+222 | ▐ |
ALT+223 | ▀ |
ALT+224 | α |
ALT+225 | ß |
ALT+226 | Γ |
ALT+227 | π |
ALT+228 | Σ |
ALT+229 | σ |
ALT+230 | µ |
ALT+231 | τ |
ALT+232 | Φ |
ALT+233 | Θ |
ALT+234 | Ω |
ALT+235 | δ |
ALT+236 | ∞ |
ALT+237 | φ |
ALT+238 | ε |
ALT+239 | ∩ |
ALT+240 | ≡ |
ALT+241 | ± |
ALT+242 | ≥ |
ALT+243 | ≤ |
ALT+244 | ⌠ |
ALT+245 | ⌡ |
ALT+246 | ÷ |
ALT+247 | ≈ |
ALT+248 | ° |
ALT+249 | ∙ |
ALT+250 | · |
ALT+251 | √ |
ALT+252 | ⁿ |
ALT+253 | ² |
ALT+254 | ■ |
ALT+255 | |
|
ALT+00 | |
ALT+01 | |
ALT+02 | |
ALT+03 | |
ALT+04 | |
ALT+05 | |
ALT+06 | |
ALT+07 | |
ALT+08 | |
ALT+09 | |
ALT+010 |
|
ALT+011 |
|
ALT+012 | |
ALT+013 |
|
ALT+014 | |
ALT+015 | |
ALT+016 | |
ALT+017 | |
ALT+018 | |
ALT+019 | |
ALT+020 | |
ALT+021 | |
ALT+022 | |
ALT+023 | |
ALT+024 | |
ALT+025 | |
ALT+026 | |
ALT+027 | |
ALT+028 | |
ALT+029 | |
ALT+030 | |
ALT+031 | |
ALT+032 | |
ALT+033 | ! |
ALT+034 | " |
ALT+035 | # |
ALT+036 | $ |
ALT+037 | % |
ALT+038 | & |
ALT+039 | ' |
ALT+040 | ( |
ALT+041 | ) |
ALT+042 | * |
ALT+043 | + |
ALT+044 | , |
ALT+045 | - |
ALT+046 | . |
ALT+047 | / |
ALT+048 | 0 |
ALT+049 | 1 |
ALT+050 | 2 |
ALT+051 | 3 |
ALT+052 | 4 |
ALT+053 | 5 |
ALT+054 | 6 |
ALT+055 | 7 |
ALT+056 | 8 |
ALT+057 | 9 |
ALT+058 | : |
ALT+059 | ; |
ALT+060 | < |
ALT+061 | = |
ALT+062 | > |
ALT+063 | ? |
ALT+064 | @ |
ALT+065 | A |
ALT+066 | B |
ALT+067 | C |
ALT+068 | D |
ALT+069 | E |
ALT+070 | F |
ALT+071 | G |
ALT+072 | H |
ALT+073 | I |
ALT+074 | J |
ALT+075 | K |
ALT+076 | L |
ALT+077 | M |
ALT+078 | N |
ALT+079 | O |
ALT+080 | P |
ALT+081 | Q |
ALT+082 | R |
ALT+083 | S |
ALT+084 | T |
ALT+085 | U |
ALT+086 | V |
ALT+087 | W |
ALT+088 | X |
ALT+089 | Y |
ALT+090 | Z |
ALT+091 | [ |
ALT+092 | \ |
ALT+093 | ] |
ALT+094 | ^ |
ALT+095 | _ |
ALT+096 | ` |
ALT+097 | a |
ALT+098 | b |
ALT+099 | c |
ALT+0100 | d |
ALT+0101 | e |
ALT+0102 | f |
ALT+0103 | g |
ALT+0104 | h |
ALT+0105 | i |
ALT+0106 | j |
ALT+0107 | k |
ALT+0108 | l |
ALT+0109 | m |
ALT+0110 | n |
ALT+0111 | o |
ALT+0112 | p |
ALT+0113 | q |
ALT+0114 | r |
ALT+0115 | s |
ALT+0116 | t |
ALT+0117 | u |
ALT+0118 | v |
ALT+0119 | w |
ALT+0120 | x |
ALT+0121 | y |
ALT+0122 | z |
ALT+0123 | { |
ALT+0124 | | |
ALT+0125 | } |
ALT+0126 | ~ |
ALT+0127 | |
|
ALT+0128 | € |
ALT+0129 | |
ALT+0130 | ‚ |
ALT+0131 | ƒ |
ALT+0132 | „ |
ALT+0133 | … |
ALT+0134 | † |
ALT+0135 | ‡ |
ALT+0136 | ˆ |
ALT+0137 | ‰ |
ALT+0138 | Š |
ALT+0139 | ‹ |
ALT+0140 | Œ |
ALT+0141 | |
ALT+0142 | Ž |
ALT+0143 | |
ALT+0144 | |
ALT+0145 | ‘ |
ALT+0146 | ' |
ALT+0147 | " |
ALT+0148 | " |
ALT+0149 | • |
ALT+0150 | – |
ALT+0151 | — |
ALT+0152 | ˜ |
ALT+0153 | ™ |
ALT+0154 | š |
ALT+0155 | › |
ALT+0156 | œ |
ALT+0157 | |
ALT+0158 | ž |
ALT+0159 | Ÿ |
ALT+0160 | |
ALT+0161 | ¡ |
ALT+0162 | ¢ |
ALT+0163 | £ |
ALT+0164 | ¤ |
ALT+0165 | ¥ |
ALT+0166 | ¦ |
ALT+0167 | § |
ALT+0168 | ¨ |
ALT+0169 | © |
ALT+0170 | ª |
ALT+0171 | « |
ALT+0172 | ¬ |
ALT+0173 | |
ALT+0174 | ® |
ALT+0175 | ¯ |
ALT+0176 | ° |
ALT+0177 | ± |
ALT+0178 | ² |
ALT+0179 | ³ |
ALT+0180 | ´ |
ALT+0181 | µ |
ALT+0182 | ¶ |
ALT+0183 | · |
ALT+0184 | ¸ |
ALT+0185 | ¹ |
ALT+0186 | º |
ALT+0187 | » |
ALT+0188 | ¼ |
ALT+0189 | ½ |
ALT+0190 | ¾ |
ALT+0191 | ¿ |
ALT+0192 | À |
ALT+0193 | Á |
ALT+0194 | Â |
ALT+0195 | Ã |
ALT+0196 | Ä |
ALT+0197 | Å |
ALT+0198 | Æ |
ALT+0199 | Ç |
ALT+0200 | È |
ALT+0201 | É |
ALT+0202 | Ê |
ALT+0203 | Ë |
ALT+0204 | Ì |
ALT+0205 | Í |
ALT+0206 | Î |
ALT+0207 | Ï |
ALT+0208 | Ð |
ALT+0209 | Ñ |
ALT+0210 | Ò |
ALT+0211 | Ó |
ALT+0212 | Ô |
ALT+0213 | Õ |
ALT+0214 | Ö |
ALT+0215 | × |
ALT+0216 | Ø |
ALT+0217 | Ù |
ALT+0218 | Ú |
ALT+0219 | Û |
ALT+0220 | Ü |
ALT+0221 | Ý |
ALT+0222 | Þ |
ALT+0223 | ß |
ALT+0224 | à |
ALT+0225 | á |
ALT+0226 | â |
ALT+0227 | ã |
ALT+0228 | ä |
ALT+0229 | å |
ALT+0230 | æ |
ALT+0231 | ç |
ALT+0232 | è |
ALT+0233 | é |
ALT+0234 | ê |
ALT+0235 | ë |
ALT+0236 | ì |
ALT+0237 | í |
ALT+0238 | î |
ALT+0239 | ï |
ALT+0240 | ð |
ALT+0241 | ñ |
ALT+0242 | ò |
ALT+0243 | ó |
ALT+0244 | ô |
ALT+0245 | õ |
ALT+0246 | ö |
ALT+0247 | ÷ |
ALT+0248 | ø |
ALT+0249 | ù |
ALT+0250 | ú |
ALT+0251 | û |
ALT+0252 | ü |
ALT+0253 | ý |
ALT+0254 | þ |
ALT+0255 | ÿ |
|
|
|
|
|
Links:
How to enter Unicode characters
in Microsoft Windows
http://www.fileformat.info/tip/microsoft/enter_unicode.htm
ASCII and Unicode and other character
encodings
http://qcpages.qc.cuny.edu/~nixon/links/asciiUnicode.html
Microsoft Character sets
http://www.microsoft.com/typography/unicode/cs.htm
Wikipedia Article on Windows Alt Keycodes
http://en.wikipedia.org/wiki/Windows_Alt_Keycodes